using System;
using System.ComponentModel;
using System.Collections;
using System.Collections.Generic;
using Eco.Services;
using Eco.ObjectRepresentation;
using Eco.ObjectImplementation;
using Eco.UmlRt;
using Eco.UmlCodeAttributes;

namespace LPMEDDebugger.Model
{

	[UmlElement("Package", Id="9ac5bfd7-9476-4741-9bbb-0a707fde179f")]
	[EcoCodeGenVersion("3.0")]
	[UmlMetaAttribute("ownedElement", typeof(LPMEDDebugger.Model.Breakpoint))]
	[UmlMetaAttribute("ownedElement", typeof(LPMEDDebugger.Model.CompilationUnit))]
	[UmlMetaAttribute("ownedElement", typeof(LPMEDDebugger.Model.Debugger))]
	[UmlMetaAttribute("ownedElement", typeof(LPMEDDebugger.Model.DebuggerAmbassador))]
	[UmlMetaAttribute("ownedElement", typeof(LPMEDDebugger.Model.TraceableVariable))]
	public abstract class LPMEDDebuggerPackage
	{
		#region Associations
		[UmlElement("Association", Id="{e0b91092-6f97-4b48-9349-052f67307cd3}")]
		[UmlTaggedValue("persistence", "transient")]
		public class DebuggerProgramModule
		{
		}

		[UmlElement("Association", Id="{9569a78d-dad6-4c24-a19d-3ab4e4f31b63}")]
		[UmlTaggedValue("persistence", "transient")]
		public class ProgramModuleICompilable
		{
		}

		[UmlElement("Association", Id="{a6e25c68-374b-45be-a63c-89786297cb2b}")]
		[UmlTaggedValue("persistence", "transient")]
		public class DebuggerDebuggerVitrualDevice
		{
		}

		[UmlElement("Association", Id="{a436fe3e-4261-4434-bb92-0e9f71cb44dc}")]
		[UmlTaggedValue("persistence", "transient")]
		public class BreakpointILPMEDStatement
		{
		}

		[UmlElement("Association", Id="{4881c44f-7720-4475-9136-a9ebbbac5604}")]
		[UmlTaggedValue("persistence", "transient")]
		public class DebuggerBreakpoint
		{
		}

		[UmlElement("Association", Id="{4e0169c7-9e44-4a0c-b59f-7077d67bbd2e}")]
		[UmlTaggedValue("persistence", "transient")]
		public class TraceableVariableILPMEDVariable
		{
		}

		[UmlElement("Association", Id="{a3e3beb8-84dc-4bee-a3d9-289bddd5b6b1}")]
		[UmlTaggedValue("persistence", "transient")]
		public class DebuggerTraceableVariable
		{
		}

		[UmlElement("Association", Id="{a05eceae-52c1-4516-8b25-bbe8bc9e6900}")]
		[UmlTaggedValue("persistence", "transient")]
		public class ProgramModuleTraceableVariable
		{
		}

		[UmlElement("Association", Id="{e9b060cf-c0f5-4aa4-885b-3718743ff599}")]
		[UmlTaggedValue("persistence", "transient")]
		public class ProgramModuleBreakpoint
		{
		}

		[UmlElement("Association", Id="{950958aa-328a-47e0-a9e8-2f49304be991}")]
		[UmlTaggedValue("persistence", "transient")]
		public class ICompilationUnitCompilationUnit
		{
		}
		#endregion

		#region Non-navigable association ends
		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.DebuggerProgramModule), Index=0)]
		[UmlElement("AssociationEnd", Id="{e66dd8ac-ff7c-4d8d-83d6-9b23b4f36f60}")]
		[UmlMetaAttribute("multiplicity", "1")]
		public class DebuggerProgramModule_Debugger
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.ProgramModuleICompilable), Index=0)]
		[UmlElement("AssociationEnd", Id="{ff4f01bd-e41a-40a8-b4cb-168fd69bf2d1}")]
		[UmlMetaAttribute("multiplicity", "1")]
		public class ProgramModuleICompilable_Unit
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.BreakpointILPMEDStatement), Index=0)]
		[UmlElement("AssociationEnd", Id="{af56658d-1086-423f-8a31-409ca4e07d9b}")]
		[UmlMetaAttribute("multiplicity", "0..1")]
		public class BreakpointILPMEDStatement_Breakpoint
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.DebuggerBreakpoint), Index=0)]
		[UmlElement("AssociationEnd", Id="{d34e6450-f0e2-4904-b50b-1470a122f03e}")]
		[UmlMetaAttribute("multiplicity", "1")]
		public class DebuggerBreakpoint_Debugger
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.TraceableVariableILPMEDVariable), Index=0)]
		[UmlElement("AssociationEnd", Id="{aaf87f3b-71ca-473c-865c-aad8584e377b}")]
		[UmlMetaAttribute("multiplicity", "0..1")]
		public class TraceableVariableILPMEDVariable_TraceableVariable
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.DebuggerTraceableVariable), Index=0)]
		[UmlElement("AssociationEnd", Id="{d7a952a8-33f5-411e-a56c-d38b6ec8a6a5}")]
		[UmlMetaAttribute("multiplicity", "1")]
		public class DebuggerTraceableVariable_Debugger
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.ProgramModuleTraceableVariable), Index=1)]
		[UmlElement("AssociationEnd", Id="{90643848-e5a4-468e-8b93-924fdb918507}")]
		[UmlMetaAttribute("multiplicity", "0..*")]
		public class ProgramModuleTraceableVariable_Watches
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.ProgramModuleBreakpoint), Index=1)]
		[UmlElement("AssociationEnd", Id="{42ca8d07-f9d4-4e16-9026-15eca61d7eb6}")]
		[UmlMetaAttribute("multiplicity", "0..*")]
		public class ProgramModuleBreakpoint_Breakpoints
		{
		}

		[UmlMetaAttribute("association", typeof(LPMEDDebuggerPackage.ICompilationUnitCompilationUnit), Index=1)]
		[UmlElement("AssociationEnd", Id="{0a0027d1-cb1b-40b3-9107-5bd657bd48ad}")]
		[UmlMetaAttribute("multiplicity", "1")]
		public class ICompilationUnitCompilationUnit_CompilationUnit
		{
		}
		#endregion
	}
}
